设备信息
- Windows 11 专业版 22H2
- Intel® Core™ i7-9750H CPU @ 2.60GHz 2.60 GHz
背景
公司的一个项目总是在线上打包成功,本地打包失败,对此一步一步排查,发现线上服务器 NodeJS 版本为 14
,而本地版本为 16
。
由于我机器上只有 16
,并且几乎所有的配置如 pnpm,yarn 等都放在 NodeJS 目录下,所以想通过 NodeJS 的版本控制工具来实现版本切换。
在经过一番搜索后,发现 nvm
是比较适合我的,我个人偏向于 “有问题能找到答案,不需要踩坑” 的工具,nvm
的历史、社区已经满足了。
刚开始装上了 nvm
,但是当他查找到我本地已有 NodeJS 程序时,询问是否需要管理本地的程序时我选择了是,然后非常难受的发现我的结构目录都被复制到 nvm
的目录了。在此呢给大家建议一开始不要让 nvm
管理已有的 Node。
经过一番观察,发现 nvm
是通过链接来实现不同版本控制的,原有数据还有保留,通过重新配置目录与环境变量PATH恢复了,后来在使用过程中发现了 Volta
,看起来很不错就选择放弃了 nvm
,Volta
目前不支持 pnpm
。
链接🔗:Volta
问题
完成了初步安装后,我发现 yarn global
无法使用,打印信息
C:\Users\MrWei>yarn global add vue
Usage Error: No project found in /C:/Users/MrWei
$ yarn run [--inspect] [--inspect-brk] [-T,--top-level] [-B,--binaries-only] <scriptName> .
解决
虽然不是项目&#xff0c;但是我这是全局安装啊&#xff01;莫名其妙&#xff0c;随后开始 Google&#xff0c;最后找到了答案&#xff1a;yarn
未来只关注项目&#xff0c;全局则默认交给 npm
了&#xff0c;也就是说全局安装需要使用 npm install -g
。
- [Bug?]: yarn global command giving “No project found” error · Issue #4570 · yarnpkg/berry (github.com)